[アップデート] Amazon ConnectのキューとルーティングプロファイルがCloudFormationで作成できるようになりました
はじめに
Amazon ConnectのキューとルーティングプロファイルをCloudFormationで作成できるようになりました。
キューとは、エージェントが応答するまでの待機エリアです。
ルーティングプロファイルとは、どのキューを受けるかを設定し、ユーザーに紐付けることができます。
ルーティングプロファイルとキューは、Connectを利用する際、確実に作成しますので、今回のアップデートによって手動設定によるヒューマンエラーのリスクを低減できます。
コードによる適切なインフラ運用をすることで、運用管理が効率化します。
CloudFormationでキューとルーティングプロファイルを作成する場合、下記のAWSドキュメントのリファレンスにプロパティ情報の記載があります。
- https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-queue.html
- https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-routingprofile.html
リファレンスを元に作成してみます。
各リソースのARNを確認
まず、ConnectインスタンスのARNとオペレーション時間のARNをコピーします。
ConnectインスタンスのARNは、AWSマネジメントコンソールのConnectインスタンスから確認できます。
オペレーション時間のARNは、Connectのコンソール上で[オペレーション時間]をクリック後、URLにARNが確認できます。
URLをコピーします。
URLをコピーすると以下のように値になりますので、arn:aws:connect:ap-northeast-1:アカウントID:instance/xxxxxx-xxxx-xxxx-xxxx-xxxxxx/operating-hours/22473730-e154-4d21-97b0-b46c9a84ce1f
をコピーします
https://インタンス名.awsapps.com/connect/operating-hours/manage?id=arn:aws:connect:ap-northeast-1:アカウントID:instance/xxxxxx-xxxx-xxxx-xxxx-xxxxxx/operating-hours/22473730-e154-4d21-97b0-b46c9a84ce1f
テンプレートの解説
ルーティングプロファイルのテンプレートの書式は以下の通りです
Type: AWS::Connect::RoutingProfile Properties: DefaultOutboundQueueArn: String Description: String InstanceArn: String MediaConcurrencies: - MediaConcurrency Name: String QueueConfigs: - RoutingProfileQueueConfig Tags: - Tag
プロパティは以下の通りです。
プロパティ | 内容 | 必須 |
---|---|---|
DefaultOutboundQueueArn | ルーティングプロファイルのデフォルトの送信キューのARN | ○ |
Description | 説明 | ○ |
InstanceArn | Amazon Connect インタンスのARN | ○ |
MediaConcurrencies | エージェントが扱えるチャネル(音声、チャット、タスク) | ○ |
Name | ルーティングプロファイル名 | ○ |
QueueConfigs | ルーティングプロファイルに割り当てるキュー | × |
Tags | タグ | × |
Description
は、記載が不要のこともありますが、ルーティングプロファイルは、記載が必須ですので注意してください。
DefaultOutboundQueueArn
は、Connectのコンソールから[キュー]を選択すると確認できます。
次にキューのテンプレートの書式は以下の通りです
Type: AWS::Connect::Queue Properties: Description: String HoursOfOperationArn: String InstanceArn: String MaxContacts: Integer Name: String OutboundCallerConfig: OutboundCallerConfig QuickConnectArns: - String Status: String Tags: - Tag
プロパティは以下の通りです。
プロパティ | 内容 | 必須 |
---|---|---|
Description | 説明 | × |
HoursOfOperationArn | オペレーション時間のARN | ○ |
InstanceArn | Amazon Connect インタンスのARN | ○ |
MaxContacts | キュー内の最大問い合わせ数の上限 | × |
Name | キュー名 | ○ |
OutboundCallerConfig | 顧客に表示される発信者ID名、ID番号、ウィスパーフロー | × |
QuickConnectArns | このキューを使用しているエージェントが利用できるクイック接続のARN | × |
Status | キューのステータス(有効•無効) | × |
Tags | タグ | × |
キューの場合、Description
は、なくても構いません
QuickConnectArns
は、インスタンスのARNに、/transfer-destination/クイック接続ID
を加えたものです。
クイック接続IDの確認方法は、CLIやConnectのコンソールから[クイック接続]を選択すると、URLにIDが表示されます。
これらを合わせるとQuickConnectArns
の具体的な値は、以下のようになります。
arn:aws:connect:ap-northeast-1:アカウントID:instance/xxxxxx-xxxx-xxxx-xxxx-xxxxxx/transfer-destination/0071477c-c998-4f34-b234-760c9caf3f82
今回のテンプレート
今回使用するテンプレートは、以下です。
パラメータには、ConnectインスタンスARNとオペレーション時間のARNが選択できるようにしております。
AWSTemplateFormatVersion: '2010-09-09' Description: connect Parameters: InstanceArn: Type: String HoursOfOperation: Type: String Resources: RoutingProfile: Type: AWS::Connect::RoutingProfile Properties: DefaultOutboundQueueArn: !GetAtt Queue.QueueArn Description: update-test InstanceArn: !Ref InstanceArn MediaConcurrencies: - Channel: VOICE Concurrency: 1 Name: cm-hirai-update-test QueueConfigs: - Delay: 0 Priority: 1 QueueReference: Channel: VOICE QueueArn: !GetAtt Queue.QueueArn Queue: Type: AWS::Connect::Queue Properties: Description: update-test HoursOfOperationArn: !Ref HoursOfOperation InstanceArn: !Ref InstanceArn MaxContacts: 2 Name: cm-hirai-update-test Status: ENABLED
スタックの作成
先程のテンプレートを使用しスタックを作成します。
パラメータは、ConnectインスタンスARNとオペレーション時間のARNを貼り付けます。
キューとルーティングプロファイルがテンプレート通り作成できました。
最後に
今回のアップデートで、テンプレートを利用し、ルーティングプロファイルとキューを作成することができました。
Connectのオペレーション時間のARNやキューのARNは、確認方法が異なるため、気をつける必要があります。
また、先日、CloudFormation で ForEach 組み込み関数を使ってループ処理ができるようになったため、ルーティングプロファイル名を変えて、大量に作成することもできますので、ぜひ使ってみてください。
[アップデート] CloudFormation で ForEach 組み込み関数を使ってループが定義出来るようになりました